using System;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("GamesWonIndicatorSegment")]
	public class GamesWonIndicatorSegment : MonoBehaviour
	{
		public enum Type
		{
			LEFT,
			MIDDLE,
			RIGHT
		}

		public GamesWonSegment m_leftSegment => method_3<GamesWonSegment>("m_leftSegment");

		public MiddleGamesWonSegment m_middleSegment => method_3<MiddleGamesWonSegment>("m_middleSegment");

		public RightGamesWonSegment m_rightSegment => method_3<RightGamesWonSegment>("m_rightSegment");

		public GamesWonSegment m_activeSegment => method_3<GamesWonSegment>("m_activeSegment");

		public GamesWonIndicatorSegment(IntPtr address, string className)
			: base(address, className)
		{
		}

		public GamesWonIndicatorSegment(IntPtr address)
			: this(address, "GamesWonIndicatorSegment")
		{
		}

		public void Init(Type segmentType, Reward.Type rewardType, int rewardAmount, bool hideCrown)
		{
			method_8("Init", segmentType, rewardType, rewardAmount, hideCrown);
		}

		public float GetWidth()
		{
			return method_11<float>("GetWidth", Array.Empty<object>());
		}

		public void AnimateReward()
		{
			method_8("AnimateReward");
		}
	}
}
